命令:
|
|
语法
|
|
后面可以跟 ‘-’ 也可以不跟,普通用户 su 不加 username 时就是切换到 root 用户,当然 root 用户同样可以 su 到普通用户。 ‘-’ 这个字符的作用是,加上后会初始化当前用户的各种环境变量。
做个实验说明加与不加 ‘-’ 的区别:
|
|
如果不加 ‘-’ 切换到 root 账户下时,当前目录没有变化,而加上 ‘-’ 切换到 root 账户后,当前目录为 root 账户的家目录,这跟直接登录 root 账户是一样的。当用 root 切换普通用户时,是不需要输入密码的。这也体现了 root 用户至高无上的权利。
以某一个用户的身份执行某一个命令
语法
|
|
示例
用 www 的用户身份执行 /home/www/test.sh 这个脚本
|
|
前提是,/home/www/test.sh 这个脚本文件 www 用户有执行权限
如何限制远程登录时,不允许 root 登录,而只允许普通用户登录
修改配置文件 /etc/sshd/sshd_config
|
|
在文件中查找 “#PermitRoorLogin yes”
这句话,修改为 “PermitRootLogin no”
表示不允许 root 用户远程登录。
/etc/sshd/sshd_config 为 sshd 服务的配置文件,默认虽然在前面加 “#” 注释了这句,“PermitRootLogin yes” 但它默认就是允许 root 账户登录的,所以要想不让 root 登录,修改为 no 就可以了。保存配置文件后,重启 sshd 服务:
|
|
如何限制远程登录时,只允许 root 使用密钥登录,而不能使用密码登录
打开配置文件 /etc/sshd/sshd_config
|
|
加上一句:
|
|
保存配置文件后,重启 sshd 服务:
|
|
这样就可以了。